package com.taichuan.selfcheck.mvp.viewinterface;

import com.taichuan.mvp.base.MvpBaseInterface;

/**
 * Created by CamelLuo on 2018/6/21.
 */
public interface TestAudioInterface extends MvpBaseInterface {

    /**
     * 定义一个方法用于刷新 录音分贝计UI
     */
    void refreshVUMeter();

    /**
     * 定义一个方法用于刷新计时器用于 录音
     * @param isNeedHidePlayTimer 是否需要隐藏 播放计时器UI
     */
    void startTimerRefreshForRecord(boolean isNeedHidePlayTimer);

    /**
     * 定义一个方法用于刷新计时器用于 播放
     * @param isNeedHideRecordTimer 是否需要隐藏 录音计时器UI
     */
    void startTimerRefreshForPlay(boolean isNeedHideRecordTimer);

    /**
     * 定义一个方法用于 重置计时器
     */
    void resetTimer();

    /**
     * 定义一个方法用于控制 开始 或 停止 播放录音
     * @param isOnlyChangeUi 是否仅变更 开始 或 停止 播放录音 的按钮UI，如为false则同时执行 开始 或 停止 播放录音流程
     */
    void openOrClosePlayRecord(boolean isOnlyChangeUi);

    /**
     * 定义一个方法用于 刷新提示信息
     * @param content
     */
    void refreshInfoText(String content);

    /**
     * 初始化音量控制SeekBar
     * @param currentMusicVolume 设备当前的媒体音量
     * @param maxStreamMusicVolume 设备的最大媒体音量
     */
    void initVolumeSeekBar(int currentMusicVolume, int maxStreamMusicVolume);
}
